﻿using System;

namespace YArchitech.HCLoad.XmlData
{
	public class AirConditioningHeatingResult
	{
		public double HeatingLoad
		{
			get
			{
				return this.m_dDJRFHAll;
			}
			set
			{
				this.m_dDJRFHAll = value;
			}
		}

		public double HeatingSensibleLoad
		{
			get
			{
				return this.m_dDJRFHXr;
			}
			set
			{
				this.m_dDJRFHXr = value;
			}
		}

		public double HeatingLatentLoad
		{
			get
			{
				return this.m_dDJRFHQr;
			}
			set
			{
				this.m_dDJRFHQr = value;
			}
		}

		public double HeatingHumidityLoad
		{
			get
			{
				return this.m_dDJSFH;
			}
			set
			{
				this.m_dDJSFH = value;
			}
		}

		public AirConditioningHeatingResult Increase(AirConditioningHeatingResult ktload)
		{
			if (ktload != null)
			{
				this.m_dDJRFHAll += ktload.HeatingLoad;
				this.m_dDJRFHXr += ktload.HeatingSensibleLoad;
				this.m_dDJRFHQr += ktload.HeatingLatentLoad;
				this.m_dDJSFH += ktload.HeatingHumidityLoad;
			}
			return this;
		}

		public AirConditioningHeatingResult Decrease(AirConditioningHeatingResult ktload)
		{
			if (ktload != null)
			{
				this.m_dDJRFHAll -= ktload.HeatingLoad;
				this.m_dDJRFHXr -= ktload.HeatingSensibleLoad;
				this.m_dDJRFHQr -= ktload.HeatingLatentLoad;
				this.m_dDJSFH -= ktload.HeatingHumidityLoad;
			}
			return this;
		}

		public static AirConditioningHeatingResult operator +(AirConditioningHeatingResult ktload1, AirConditioningHeatingResult ktload2)
		{
			new AirConditioningHeatingResult();
			ktload1.Increase(ktload2);
			return ktload1;
		}

		public static AirConditioningHeatingResult operator -(AirConditioningHeatingResult ktload1, AirConditioningHeatingResult ktload2)
		{
			new AirConditioningHeatingResult();
			ktload1.Decrease(ktload2);
			return ktload1;
		}

		private double m_dDJRFHAll;

		private double m_dDJRFHXr;

		private double m_dDJRFHQr;

		private double m_dDJSFH;
	}
}
